草庐IT

C++ 多重虚拟继承与 COM

全部标签

windows - 我拥有自己的控制台还是从 parent 那里继承的?

NT字符模式应用程序如何确定其控制台是否已从父进程继承,而不是在CreateProcess中新分配的控制台?哇,这么不受欢迎的标签!添加窗口以吸引合适的程序员@anonymousdownvoter:我只能根据一些反馈对这个问题做有限的扩展。说明不清楚的地方(但是需要熟悉Windows内核和子系统)。请记住,我们这里的很多人都是程序员,所以我们的humour非常具体,不要判断标题双关语太苛刻。 最佳答案 一些可能有帮助也可能没有帮助的想法-这不是真正的答案,但评论太长了。*您可以使用GetConsoleWindow()来确定控制台的H

windows - 使用mfc42.dll 作为免注册COM?

我正在使用第三方Active-X控件,该控件需要在用户系统上安装特定版本的MFC42.dll。我正在尝试为我的产品的非管理员安装添加支持,并且必须安装例如mfc42.dll到系统文件夹并注册它显然使这不可能。第三方Active-X使用manifest文件作为免注册COM,想知道是否可以对MFC42.dll和MSVCRT.DLL做同样的操作,将它们存放在应用程序文件夹中?有人试过这个吗? 最佳答案 这是不可能的。MSVCRT和MFC42.dll不是COM对象,甚至不是win32程序集,因此不能使用无注册COM访问。您可以安装mfc42

windows - COM 服务器实例创建失败,出现错误 -2147024156

当我尝试使用CoCreateInstance创建DCOM服务器时,它失败了,错误代码为“-2147024156”。错误码对应的错误信息是“进程需要提升”。我应该怎么做才能解决这个问题? 最佳答案 AUACdialogappearsforBothClientandServerapplications是的,这就是问题所在。没有在远程机器上显示UAC对话框的机制。这将彻底打败UAC的意义。你必须让它在没有对话框的情况下工作。将list中的“requireAdministrator”替换为“asInvoker”并将代码调整为不需要权限。祝你

c++ - 尝试从某个 COM 端口读取/写入时程序无法执行

我正在通过串行端口与宽带卡通信。我必须通过COM5读取GPS数据,并通过执行命令并读取COM3上的响应来获取信号强度。每当我尝试读取/写入COM3时,程序都无法执行。当我注释掉包含以下内容的行时:if(!WriteFile(hSerial2,wzBuff,7,&dZBytesRead,NULL))std::cout程序运行完美。完整代码如下:#include#include#include#include#include#includeusingnamespacestd;vectorfindLocation(stringstr,charcharacter);intmain(){time

c++ - 从非 COM 静态库中删除对 OleInitialize 的调用是否安全?

今天我必须在原生C++项目中定义WIN32_MEAN_AND_LEAN预处理器宏,因为我决定在其中使用boost::asio,如果没有该宏,我会得到构建错误。事实是,我现在得到的错误是OleInitialize:identifiernotfound。根据MSDN,此函数用于初始化COM库。我的项目现在不是COM库,但我的合作伙伴说它曾经是。在这种情况下,删除电话是否安全?该项目混合使用了Win32串行端口函数和boost::asio(逐渐地,我将只使用boost::asio)。我担心的是OleInitialize对于某些Win32调用可能是必需的。这就是它所做的一切:HRESULThO

c++ - 如何创建文件路径可以像磁盘一样访问的虚拟文件系统

我需要在内存或磁盘上创建FileSystem类型的东西,它可以像磁盘上的文件一样访问,它的路径可以在fopen()等函数中使用。详细信息:我正在使用AddFontResourceEx函数在应用程序中加载字体。由于此功能需要文件路径,因此文件需要存在于磁盘上。但我要求用户不能访问/查看字体文件。我尝试了AddFontMemResourceEx函数,但加载的字体不可枚举,因此用户无法在应用程序中看到字体。我也尝试过一些创建VFS的库,但它们像数据库一样工作,即你可以创建文件/目录并访问它们。但不能在AddFontResourceEx或任何其他函数中使用它们的文件路径。是否存在某种方法可以让

windows - Azure 虚拟机 (Windows) 的最佳工作流程是什么?

我正在使用MongoDB数据库开发Socket.IO应用程序。由于各种原因,我正在开发在Azure中的Windows虚拟机上运行的应用程序。设置一切都相当轻松,我现在在云中有了一个基本的应用程序。但是,我无法找到舒适的工作流程。我希望能够将更改推送到虚拟机(就像我在*nix系统上使用git一样),但我不确定如何最好地做到这一点。 最佳答案 因此您可以使用VisualStudio与GithubforWindows一起开发。对于熟悉Linux的东西,您可能想尝试Cloud9IDE,它是一个浏览器中的IDE,还可以轻松连接到您的githu

java - 包 'au.com.bytecode' 不存在 (OpenCSV)

正如标题所说。我究竟做错了什么?我正在使用Netbeans,我为我的第3方库创建了一个文件夹,右键单击包,导航:Properties>Libraries>AddJAR/Folder>OpenCSV-2.3.jar然后使用importau.com.bytecode.OpenCSV;classOpenCSVextendsau.com.bytecode.OpenCSV{}但每次我尝试修复导入或编译时,netbeans都会抛出上述错误(或完全删除导入)。那么我做错了什么?提前致谢。 最佳答案 我想通了。在使用7Zip浏览JAR后,我发现“o

windows - 从 guest 操作系统访问虚拟主机(oracle virtual box)

我正在使用ubuntu11.10并在不同的ip上安装了不同的虚拟主机127.0.0.2www.example.local127.0.0.3www.wordpress.local...etc我想在IE9中测试这些网站,为此我在oraclevirtualbox中安装了windows7,还修改了windows7的主机文件,并在文件末尾添加了这一行10.0.2.2localhost并创建一个新的桥接器。完成所有这些设置后,我可以从Windows7访问ubuntu的本地主机,但在访问ubuntu的虚拟主机时发现问题。请帮助我在Windows7上访问这些虚拟主机,我已经为此搜索了谷歌、ubuntu

windows - 无法使用 GNAT Ada 读取 USB com 端口

我正在尝试使用以下方法设置USB串行端口:GNAT.SERIAL_COMMUNICATIONS。我可以打开端口,但是当我尝试设置端口的属性时,出现以下异常raisedGNAT.SERIAL_COMMUNICATIONS.SERIAL_ERROR:set:cannotgetcommstate(6)有什么想法吗?肖恩 最佳答案 由于您使用的不是自然的WindowsCOM端口,而是设备驱动程序创建的额外COM端口,您可能对thisquestion感兴趣(尤其是我对此的回答)。摘要是有时具有正常名称的程序无法访问虚拟COM端口。在放弃"CO